

#ifndef SAR_SYSTEM_VM_HASH_H
#define SAR_SYSTEM_VM_HASH_H

#include "datum.h"

#include <kernel/kernel.h>

typedef struct HASH {
	char **Keys;
	vm_Datum *Values;
	size Size;
	size Capacity;
} vm_Hash;


vm_Hash *vm_hash_request ();
void vm_hash_release (vm_Hash *_hash);
vm_Datum *vm_hash_lookup (vm_Hash *_hash, const char *_name);
vm_Datum *vm_hash_insert (vm_Hash *_hash, const char *_name);
void vm_hash_remove (vm_Hash *_hash, const char *_name);
vm_Datum *vm_hash_fast (vm_Hash *_hash, const char *_name, int _key);


#endif
